package com.servicesManagement.model;
// Generated Dec 13, 2014 11:53:18 AM by Hibernate Tools 3.2.1.GA


import java.math.BigDecimal;
import java.util.Date;
import java.util.HashSet;
import java.util.Set;
import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.OneToMany;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

/**
 * AttributeGroup generated by hbm2java
 */
@Entity
@Table(name="ATTRIBUTE_GROUP"
    ,schema="SANKAR"
)
public class AttributeGroup  implements java.io.Serializable {


     private BigDecimal attributeGroupId;
     private Attribute attribute;
     private BigDecimal changedByUserId;
     private Date changedDate;
     private BigDecimal createdByUserId;
     private Date createdDate;
     private BigDecimal dependencyTypeId;
     private String description;
     private Date effectiveDate;
     private Date expirationDate;
     private Set attributeGroupConfs = new HashSet(0);

    public AttributeGroup() {
    }

	
    public AttributeGroup(BigDecimal attributeGroupId) {
        this.attributeGroupId = attributeGroupId;
    }
    public AttributeGroup(BigDecimal attributeGroupId, Attribute attribute, BigDecimal changedByUserId, Date changedDate, BigDecimal createdByUserId, Date createdDate, BigDecimal dependencyTypeId, String description, Date effectiveDate, Date expirationDate, Set attributeGroupConfs) {
       this.attributeGroupId = attributeGroupId;
       this.attribute = attribute;
       this.changedByUserId = changedByUserId;
       this.changedDate = changedDate;
       this.createdByUserId = createdByUserId;
       this.createdDate = createdDate;
       this.dependencyTypeId = dependencyTypeId;
       this.description = description;
       this.effectiveDate = effectiveDate;
       this.expirationDate = expirationDate;
       this.attributeGroupConfs = attributeGroupConfs;
    }
   
     @Id 
    
    @Column(name="ATTRIBUTE_GROUP_ID", unique=true, nullable=false, scale=0)
    public BigDecimal getAttributeGroupId() {
        return this.attributeGroupId;
    }
    
    public void setAttributeGroupId(BigDecimal attributeGroupId) {
        this.attributeGroupId = attributeGroupId;
    }
@ManyToOne(fetch=FetchType.LAZY)
    @JoinColumn(name="OWNER_ATTRIBUTE_ID")
    public Attribute getAttribute() {
        return this.attribute;
    }
    
    public void setAttribute(Attribute attribute) {
        this.attribute = attribute;
    }
    
    @Column(name="CHANGED_BY_USER_ID")
    public BigDecimal getChangedByUserId() {
        return this.changedByUserId;
    }
    
    public void setChangedByUserId(BigDecimal changedByUserId) {
        this.changedByUserId = changedByUserId;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="CHANGED_DATE", length=7)
    public Date getChangedDate() {
        return this.changedDate;
    }
    
    public void setChangedDate(Date changedDate) {
        this.changedDate = changedDate;
    }
    
    @Column(name="CREATED_BY_USER_ID")
    public BigDecimal getCreatedByUserId() {
        return this.createdByUserId;
    }
    
    public void setCreatedByUserId(BigDecimal createdByUserId) {
        this.createdByUserId = createdByUserId;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="CREATED_DATE", length=7)
    public Date getCreatedDate() {
        return this.createdDate;
    }
    
    public void setCreatedDate(Date createdDate) {
        this.createdDate = createdDate;
    }
    
    @Column(name="DEPENDENCY_TYPE_ID")
    public BigDecimal getDependencyTypeId() {
        return this.dependencyTypeId;
    }
    
    public void setDependencyTypeId(BigDecimal dependencyTypeId) {
        this.dependencyTypeId = dependencyTypeId;
    }
    
    @Column(name="DESCRIPTION")
    public String getDescription() {
        return this.description;
    }
    
    public void setDescription(String description) {
        this.description = description;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="EFFECTIVE_DATE", length=7)
    public Date getEffectiveDate() {
        return this.effectiveDate;
    }
    
    public void setEffectiveDate(Date effectiveDate) {
        this.effectiveDate = effectiveDate;
    }
    @Temporal(TemporalType.DATE)
    @Column(name="EXPIRATION_DATE", length=7)
    public Date getExpirationDate() {
        return this.expirationDate;
    }
    
    public void setExpirationDate(Date expirationDate) {
        this.expirationDate = expirationDate;
    }
@OneToMany(cascade=CascadeType.ALL, fetch=FetchType.LAZY, mappedBy="attributeGroup")
    public Set getAttributeGroupConfs() {
        return this.attributeGroupConfs;
    }
    
    public void setAttributeGroupConfs(Set attributeGroupConfs) {
        this.attributeGroupConfs = attributeGroupConfs;
    }




}


